home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Very Best of Atari Inside
/
The Very Best of Atari Inside 1.iso
/
mint
/
mintmisc
/
readme
< prev
Wrap
Text File
|
1992-03-05
|
7KB
|
217 lines
In diesem Archiv befinden sich die übersetzten Files, die in der folgenden Message
aus dem MAUS-Netz angesprochen wurden.
Gruß,
Karsten Isakovic
Email: KI@B.MAUS.DE Post: Karsten Isakovic
KI@B Wilmesdorferstr.82
KI%B@2:242/2.6 1000 Berlin 12
KI%MAUS B@ZERMAUS.ZER
----------------------------------------------------------------------------------
Gruppe: ATARI-EXP
L.I...... Mint-Hintergrund-Prozesse
Kommentar zu A32014@AC
ID:A7644@B
Von : Karsten Isakovic @ B (So, 01.03.92 10:33)
Ich habe mal ein paar Messages bezüglich MiNT aus der MAUS kopiert, die sich
mit Euren Fragen befassen:
Themen:
- Langsameres Abarbeiten von nachgestarteten Prozessen in GEM-Programmen
- Shells
- Ausgaben von nachgestarteten Prozessen ansehen
- Probleme mit MiNT & NVDI
- BGACC und Anhalten nachgestarter Pozesse
##############################################################################
Thema: Langsameres Abarbeiten von nachgestarteten Prozessen in GEM-Programmen
Von : Karsten Isakovic @ B (Sa, 21.02.92 20:25)
SH>Aber nun zu meinem momentanen Problem: In früheren Versionen war es kein
SH>Problem, neben irgendwelchen GEM-Applikationen was im Hintergrund laufen zu
Dies liegt daran, daß im Supervisor-Modus keine Taskswitches mehr ausgeführt
werden. Dies würde nur Probleme bringen. Das AES selber läuft im Supervisor-
Modus ab, wenn GEMINI oder der DESKTOP auf seine Eingaben wartet, passiert
erst einmal nichts mehr.
SH>[...] Gibt es da eine Einflußmöglichkeit?
Ja, ein ganz einfaches ACC kann schon dafür sorgen, daß alles weiterläuft:
---------------------------------------------
#include <aes.h>
void main(void)
{
appl_init();
while(1)
{
evnt_timer(10,0); /* Alle 10 millisekunden */
Syield(); /* Rechenzeit an MiNT-Prozesse abgeben */
}
}
---------------------------------------------
Den Syield musst Du natürlich als gemdos(255) schreiben, da er (noch?)
nicht in der TurboC/PurceC Bibliothek zu finden ist.
##############################################################################
Thema: Shells:
------------------------------------------------------------------------------
Von : Karsten Isakovic @ B (So, 16.02.92 13:35)
Ich habe folgende Shells:
KSH 4.0a/24.02.91 ggascoigne
TCSH 6.00.02 Eric R.Smith
BASH 1.05.1 GNU version
Alle drei lassen sich ueber MW2 laden, bei der KSH hatte ich Probleme mit dem
Finden der PROFILE.KSH. (ENV=... im INIT.RC hilft weiter)
##############################################################################
Thema: Ausgaben von nachgestarteten Prozessen ansehen
Von : Markus Müller @ K (Fr, 21.02.92 13:07)
>[...] Wie ist es zu
>bewerkstelligen, daß wir 'mal die Bildschirmausgabe zu Gesicht bekommen (z.B.
>um festzustellen, ob ein Fehler aufgetreten ist oder auch nur aus Neugier)
>und dann TeX weiter im Hintergrund laufen zu lassen?
Wenn man in bgacc eine Shell nachstartet, die es erlaubt ihrerseits Prozesse
im Hintergrund laufen zu lassen (z.B. MiNTINIT: `tex -para ... >datei &'), so
kann man `datei'ganz einfach mit `more' oder `cat' anzeigen lassen (auch wenn
diese laut `ls -l' noch eine Länge 0 hat).
MfG, Markus
--------------------------
[Man kann auch mit 'tail' die letzten Zeilen der Datei anzeigen lassen...]
##############################################################################
Thema: MiNT & NVDI
Von : Juergen Heindel @ MS (Fr, 14.02.92 20:32)
Julian Reschke @ MS schrieb am Di, 10.02.92 10:31 in ATARI ST:
JR>MiNT 0.92 geht davon aus, daß Bconout() auf die Konsole d0 nicht zerstört
JR>(das ist natürlich ein Bug). Deine Beta-Version von Gemini tut das aber.
JR>Abhilfe: MiNT 0.93 installieren (müßte in den nächsten Tagen kommen).
Dies auch der Fehler der zu Problemen mit NVDI fuehrt. Hier ein kleines
Programm (Minimalversion) das den Fehler behebt bis MiNT 0.93 kommt.
mfg Juergen
----------------- Schnip -------------------------------------
text
pranf:
moveq.l #10,d0 ;Länge Berechnen und in D7
lsl.l d0,d7
move.l 4(sp),a0
add.l 12(a0),d7
add.l 20(a0),d7
add.l 28(a0),d7
add.l #$100,d7
pea vinst ;Adresse der Supervisorroutine
move.w #38,-(sp)
trap #14
addq.l #6,sp
move.w #0,-(sp) ;Beenden mit Speicherplatzreservierung
move.l d7,-(sp)
move.w #$31,-(sp)
trap #1
vinst:
move.w sr,-(sp) ;Status auf Stack retten
ori.w #$700,sr ;Interrupts sperren !
move.l $586,alttrap ;alten Trap retten
move.l #ntrap,$586
noinst:
move.w (sp)+,sr ;alter Status
rts
even
dc.b 'XBRA'
dc.b 'HMNT'
alttrap:
dc.l 0
ntrap:
move.l d0,hd0
move.l a6,ha6
move.l (sp)+,altret
move.l alttrap,a6
jsr (a6)
aus:
move.l altret,-(sp)
move.l ha6,a6
move.l hd0,d0
rts
even
hd0:
dc.l 0
ha6:
dc.l 0
altret:
dc.l 0
END
----------------------------------
Von : Juergen Heindel @ MS (Sa, 29.02.92 16:57)
Noch eine Bemerkung zu NVDI und MiNT. Mit dem Patchprogramm funktioniert zwar
die Ausgabe bei NVDI jetzt, jedoch wird bei _jedem_ Aufloesungswechsel durch
die Neuinstallation eines Bildschirmtreibers das Patchprogramm aus den Vektoren
ausgehaengt. Man sollte es also nach dem Aufloesungswechsel neu starten (oder
es verbessern ... oder noch besser: MiNT 0.93 [hoffentlich bald])
mfg Juergen
##############################################################################
Thema: BGACC und Anhalten nachgestarter Pozesse
Von : Karsten Isakovic @ B (Mi, 19.02.92 23:47)
MH>Wir starten TeX unter init, welches von bgacc aufgerufen wurde. Mit ^0
MH>können wir dann bgacc verlassen.
MH>TeX (wir meinen tex.ttp) allerings erwartet nach etwa einer halben
MH>Minute eine Eingabe (was wir mit top feststellen können). Wird dann
MH>wieder bgacc angeklickt, läuft TeX weiter.
Zur Erklärung muß ich etwas weiter ausholen:
BGACC arbeitet mit einem internen 2.Prozess (Server), da bei einem
Wechsel des Hauptprogramms Probleme mit den Filehandles auftreten.(*)
Das INIT, das in BGACC nachgestartet wurde, kommunizert mit dem
Server über eine PIPE. Alle Ausgaben die von der Shell oder nach-
gestarteten Prozessen gemacht werden, werden in die Pipe ausgegeben
und der Server liest sie von dort und gibt sie auf dem Schirm aus.
Der Server in BGACC gibt allerdings nur aus, wenn die 2.Seite
sichtbar ist. Wenn man mit ^0 auf die GEM-Seite umschaltet, so
werden noch maximal 4096 Bytes ausgegeben, bis die Pipe die Annahme
von Zeichen verweigert und MiNT den ausgebenden Prozess blokiert.
Schaltet man auf den BGACC-Schirm um, so wird vom Server zu Anfang
sehr schnell die Pipe abgearbeitet und der Prozess läuft weiter.
Lenkt man die Ausgaben in ein File um, so kann die Pipe auch nicht
'vollaufen' und der Prozess wird nicht gestoppt.
(*) Der interne Server-Prozess ist notwendig, da MiNT Filehandles
pro Prozess vergibt. Da beim Starten von GEM-Programmen der
aktive Prozess wechselt, würde es Probleme beim Zugriff auf
den Pipe-Filehandle geben. Genauso gäbe es Ärger mit Speicher,
der während des nachgestarteten GEM-Programms angelegt wurde.
Der Speicher würde dem GEM-Programm gehören und beim Verlassen
desselben natürlich freigegeben...
Gruß, Karsten